// 合并两个有序数组

// 示例 1：

// 输入：nums1 = [1,2,3,0,0,0], m = 3, nums2 = [2,5,6], n = 3
// 输出：[1,2,2,3,5,6]
// 示例 2：

// 输入：nums1 = [1], m = 1, nums2 = [], n = 0
// 输出：[1]

// 来源：力扣（LeetCode）
// 链接：https://leetcode-cn.com/problems/merge-sorted-array
// 著作权归领扣网络所有。商业转载请联系官方授权，非商业转载请注明出处。

// 就是从后向前放最大数
function merge(nums1, m, num2, n) {
    let len1 = m - 1;
    let len2 = n - 1;
    let len = m + n - 1;

    while (len2 > 0) { // 目标是将num2 全部放入 所以len2作为参考
        if (len1 < 0) {// 如果1不存在 则从后往前放入2 或则num1 短
            nums1[len--] = num2[len2--];
            continue
        }
        nums1[len--] = nums1[len1] >= num2[len2] ? nums1[len1--] : num2[len2--]
    }
}
